package com.myway.dto.payment.domain;

import java.util.HashMap;

/**
 * 类名称：PayType <br/>
 * 类描述：支付类型 <br/>
 * 创建时间：2015年11月17日 下午8:53:54 <br/>
 * @author 张涛  
 * @version V1.0
 */
public enum PayType {

	/**钱海支付**/
	OCEAN_PAY("OCEANPAY"),

	/**易宝在线网银支付**/
	YEE_PAY("YEEPAY"),

	/**易宝无卡支付**/
	YEE_PAY_EPOS("YEEPAY_EPOS"),
	
	/**支付宝**/
	ALIPAY("ALIP"),
	
	/**支付宝分账**/
	ALIMERGEPAY("ALIMPAY"),
	
	/**银联网付通**/
	CHINA_PAY("CPAY"),
	
	/**财付通**/
	TEN_PAY("TPAY"),
	
	/**微信支付**/
	WX_PAY("WXPAY"),
	
	/**快钱**/
	NINE_NINE_BILL("99B"),
	
	/**员工卡**/
	STAFF_CARD("SC"),
	
	/**汇付天下**/
	CHINA_PNR("CPNR"),
	
	/**银联支付**/
	CHINA_PAY_CARD("CPAYCARD"),	
	
	/**员工卡手机支付**/
	STAFF_CARD_PHONE("SCP"),	
	
	/**wap支付宝支付**/
	WAP_ALIPAY("WAPALI"),	
	
	/**中国移动支付**/
	CHINA_MOBILE_PAY("CMPAY"),	
	
	/**京东钱包**/
	JD_CHINA_BANK("JDCNBANK"),	
	
	/**渤海易生支付**/
	CHINA_EASY_CARD("ECARD"),	
	
	/**天航手机支付**/
	GS_CHINA_BANK("GSCNBANK"),	
	
	/**新生支付**/
	HNA_PAY("HNAPAY"),			
	
	/**新华支付**/
	CHINAPNR_XINHUA("CPNRX"),	
	
	/**招商银行支付**/
	CMB_PAY("CMBPAY"),		
	
	/**祥鹏淘宝旗舰店支付**/
	TAO_BAO("TAOBAO"),		
	
	/**银联在线支付**/
	UNION_PAY("UNIONPAY"),	
	
	/**积分支付**/
	AMS_POINT("AMS_POINT"),	
	
	/**员工卡**/
	YXTX_CARD("YXTX_CARD"),
	
	/**员工卡**/
	XYKC_CARD("XYKC_CARD"),
	
	/**常旅客积分**/
	CLK_POINT("CLK_POINT");
	
	private final String alias;
	private static HashMap<String, PayType> map;

	static {
		map = new HashMap<String, PayType>();
		for (PayType type : PayType.values()) {
			map.put(type.alias, type);
		}
	}

	PayType(String alias) {
		this.alias = alias;
	}

	@Override
	public String toString() {
		return this.alias;
	}

	/**
	 * 名称：valueOfAlias <br/>
	 * 描述：类型 <br/>
	 * @param alias
	 * @return
	 */
	public static PayType valueOfAlias(String alias) {
		PayType type = map.get(alias);
		if (type == null) {
			throw new IllegalArgumentException("Unknown pay type alias [" + alias + "]");
		}
		return type;
	}
}